package com.hitqz.robot.driver.model;

import java.io.Serializable;
import java.util.List;

/**
 * @author xupkun
 * @date 2024/6/15
 */
public class IRobotPosDto implements Serializable {

    private static final long serialVersionUID = -4300277964721409947L;

    private float controllerTemp;


    private float x;


    private float y;


    private float angle;


    private int pixelX;

    private int pixelY;

    private float pixelAngle;

    private List<PointDto> passedPath;

    private float webControlSpeed;

    private String currentStation;

    private String lastStation;

    private float temperature;

    private float vx;


    private float vy;

    private float w;


    private boolean blocked;

    private float batteryLevel;

    private boolean charging;

    private boolean emergency;

    private String currentMap;

    private String createOn;

    private boolean brake;

    private boolean softEmc;

    private boolean isReached;

    private Integer taskStatus;

    private String taskStatusStr;

    private String blockReason;

    private float voltage;

    private String current;

    private String currentDirection;

    private double speed;

    private String label;

    private String url;


    private String qrCodeX;

    private String qrCodeY;

    private String qrCodeZ;

    private List<RobotIOStatusDto> DI;


    private List<RobotIOStatusDto> DO;

    /**
     * 不同机器人需要进行解析成navEnum
     */
    private int navStatus;

    private String navStatusStr;

    /**
     * 最后要到达的站点
     */
    private String targetStation;

    /**
     * AGV 模型下，true 代表有料 false 没有料
     */
    private Boolean isFull;

    /**
     * agv 模型下的顶升高度
     */
    private double jackHeight;


    /**
     * 机器人-置信度
     */
    private float confidence;

    public float getControllerTemp() {
        return controllerTemp;
    }

    public void setControllerTemp(float controllerTemp) {
        this.controllerTemp = controllerTemp;
    }

    public float getX() {
        return x;
    }

    public void setX(float x) {
        this.x = x;
    }

    public float getY() {
        return y;
    }

    public void setY(float y) {
        this.y = y;
    }

    public float getAngle() {
        return angle;
    }

    public void setAngle(float angle) {
        this.angle = angle;
    }

    public String getCurrentStation() {
        return currentStation;
    }

    public void setCurrentStation(String currentStation) {
        this.currentStation = currentStation;
    }

    public float getVx() {
        return vx;
    }

    public void setVx(float vx) {
        this.vx = vx;
    }

    public float getVy() {
        return vy;
    }

    public void setVy(float vy) {
        this.vy = vy;
    }

    public float getW() {
        return w;
    }

    public void setW(float w) {
        this.w = w;
    }

    public boolean isBlocked() {
        return blocked;
    }

    public void setBlocked(boolean blocked) {
        this.blocked = blocked;
    }

    public float getBatteryLevel() {
        return batteryLevel;
    }

    public void setBatteryLevel(float batteryLevel) {
        this.batteryLevel = batteryLevel;
    }

    public boolean isCharging() {
        return charging;
    }

    public void setCharging(boolean charging) {
        this.charging = charging;
    }

    public boolean isEmergency() {
        return emergency;
    }

    public void setEmergency(boolean emergency) {
        this.emergency = emergency;
    }

    public String getCurrentMap() {
        return currentMap;
    }

    public void setCurrentMap(String currentMap) {
        this.currentMap = currentMap;
    }

    public String getCreateOn() {
        return createOn;
    }

    public void setCreateOn(String createOn) {
        this.createOn = createOn;
    }

    public boolean isBrake() {
        return brake;
    }

    public void setBrake(boolean brake) {
        this.brake = brake;
    }

    public boolean isSoftEmc() {
        return softEmc;
    }

    public void setSoftEmc(boolean softEmc) {
        this.softEmc = softEmc;
    }

    public Integer getTaskStatus() {
        return taskStatus;
    }

    public void setTaskStatus(Integer taskStatus) {
        this.taskStatus = taskStatus;
    }

    public String getBlockReason() {
        return blockReason;
    }

    public void setBlockReason(String blockReason) {
        this.blockReason = blockReason;
    }

    public float getVoltage() {
        return voltage;
    }

    public void setVoltage(float voltage) {
        this.voltage = voltage;
    }

    public String getCurrent() {
        return current;
    }

    public void setCurrent(String current) {
        this.current = current;
    }

    public double getSpeed() {
        return speed;
    }

    public void setSpeed(double speed) {
        this.speed = speed;
    }


    public int getPixelX() {
        return pixelX;
    }

    public void setPixelX(int pixelX) {
        this.pixelX = pixelX;
    }

    public int getPixelY() {
        return pixelY;
    }

    public void setPixelY(int pixelY) {
        this.pixelY = pixelY;
    }

    public float getPixelAngle() {
        return pixelAngle;
    }

    public void setPixelAngle(float pixelAngle) {
        this.pixelAngle = pixelAngle;
    }

    public List<PointDto> getPassedPath() {
        return passedPath;
    }

    public void setPassedPath(List<PointDto> passedPath) {
        this.passedPath = passedPath;
    }


	public String getTaskStatusStr() {
        return taskStatusStr;
    }

    public void setTaskStatusStr(String taskStatusStr) {
        this.taskStatusStr = taskStatusStr;
    }


	public float getWebControlSpeed() {
        return webControlSpeed;
    }

    public void setWebControlSpeed(float webControlSpeed) {
        this.webControlSpeed = webControlSpeed;
    }

    public String getLabel() {
        return label;
    }

    public void setLabel(String label) {
        this.label = label;
    }

    public boolean isReached() {
        return isReached;
    }

    public void setReached(boolean reached) {
        isReached = reached;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getCurrentDirection() {
        return currentDirection;
    }

    public void setCurrentDirection(String currentDirection) {
        this.currentDirection = currentDirection;
    }

    public float getTemperature() {
        return temperature;
    }

    public void setTemperature(float temperature) {
        this.temperature = temperature;
    }


    public String getQrCodeX() {
        return qrCodeX;
    }

    public void setQrCodeX(String qrCodeX) {
        this.qrCodeX = qrCodeX;
    }

    public String getQrCodeY() {
        return qrCodeY;
    }

    public void setQrCodeY(String qrCodeY) {
        this.qrCodeY = qrCodeY;
    }

    public String getQrCodeZ() {
        return qrCodeZ;
    }

    public void setQrCodeZ(String qrCodeZ) {
        this.qrCodeZ = qrCodeZ;
    }


    public List<RobotIOStatusDto> getDI() {
        return DI;
    }

    public void setDI(List<RobotIOStatusDto> DI) {
        this.DI = DI;
    }

    public List<RobotIOStatusDto> getDO() {
        return DO;
    }

    public void setDO(List<RobotIOStatusDto> DO) {
        this.DO = DO;
    }

    public String getLastStation() {
        return lastStation;
    }

    public void setLastStation(String lastStation) {
        this.lastStation = lastStation;
    }

    public int getNavStatus() {
        return navStatus;
    }

    public void setNavStatus(int navStatus) {
        this.navStatus = navStatus;
    }

    public String getNavStatusStr() {
        return navStatusStr;
    }

    public void setNavStatusStr(String navStatusStr) {
        this.navStatusStr = navStatusStr;
    }

    public String getTargetStation() {
        return targetStation;
    }

    public void setTargetStation(String targetStation) {
        this.targetStation = targetStation;
    }

    public Boolean getFull() {
        return isFull;
    }

    public void setFull(Boolean full) {
        isFull = full;
    }

    public double getJackHeight() {
        return jackHeight;
    }

    public void setJackHeight(double jackHeight) {
        this.jackHeight = jackHeight;
    }


    public float getConfidence() {
        return confidence;
    }

    public void setConfidence(float confidence) {
        this.confidence = confidence;
    }
}
